a = 1


def outer():
    a = 20

    def inner():
        nonlocal a
        a = 30

    inner()
    print('outer a', a)


outer()
print(a)

# 通过 nonlocal 来改变 内层函数和 外层函数之间的变量
